A registry is oftentimes used in a computer to store information about files. The registry is a database repository for information about a computer's configuration. It is organized in a hierarchical structure, and is comprised of subtrees and their keys, hives, and value entries. The registry keys, or keys, contain information that may be required for an application to run. Registry Keys are often paths to specific files.
Maintaining information in a registry is problematic due to a user's tendency to move folders and resources. For example, in the Macintosh version of the MICROSOFT OFFICE program module, or “MACOFFICE 4.2” program module, manufactured by Microsoft Corporation of Redmond, Wash., an installer program module was required to set the appropriate information in the registry. Several common user actions could render the “MACOFFICE 4.2” program module inoperative. For example, if a user changed something as minor as the hard drive name of their computer, the paths in the registry would be broken and the “MACOFFICE 4.2” program module would not work properly.
There were several other common actions that caused malfunctions in the registry in association with the “MACOFFICE 4.2” program module. Some of these actions that caused malfunctions were:                a user moving components from one location to another on the hard drive;        a user renaming their hard drive;        a user renaming several of the folders on their hard drive;        a system administrator “pushing” an application program module to clients, such as by using the “NORTON ADMINISTRATOR” program module or the “APPLE NETWORK ADMINISTRATOR TOOLKIT”, or “ANAT”, program module;        a user reinstalling the operating system;        a user installing an operating system upgrade;        a user dragging the appropriate components to the hard drive of the computer and placing them in the appropriate location;        a user renaming a file; and        a user moving the installer program module to another hard drive on the same computer.        
All of these malfunctions originated from the registry, which is used by all Object Linking and Embedding (OLE) aware applications. Products such as the “ADOBE PAGEMAKER” program module, MACINTOSH version, also exhibit some of these malfunctions.
The “WINDOWS” version of the “OFFICE” program module, manufactured by Microsoft Corporation of Redmond, Washington, has solved some of the above-described problems using a self-registration application program module, known as the selfreg dynamic link library or selfreg.dll, installed on the computer. When the selfreg.dll is called, it stores registry keys in the registry. Thus, an installer program module is not needed to set the registry keys. The registry keys to be registered are stored in a .srg file, which is a pre-authored text file. When the selfreg.dll is called, the location of the .srg file is passed to the selfreg.dll. The selfreg.dll will then register all registry keys contained. in the .srg file. Self-registration using the selfreg.dll is comparable to an installer program module registering the registry keys for an application program module.
However, there are several drawbacks to the selfreg.dll. For example, there is a need for someone to install the selfreg.dll before it will function. Another problem is that the selfreg.dll may get moved or deleted so that it will not function. Another drawback of the selfreg.dll is that there is the need for someone to install the .srg file. Another drawback of the selfreg.dll is that the .srg file may become out of sync with the selfreg.dll, causing the selfreg.dll to register an incorrect version of a registry key. Still another drawback is that the .srg file could be deleted or moved, causing the selfreg.dll to malfunction. Still another drawback is that someone needs to explicitly call the selfreg.dll, because it does not happen automatically.
Thus, there is a need for a method for automatically updating a computer registry. There is also a need for a method for automatically updating a computer registry after a user renames their hard drive, renames several of the folders on their hard drive, installs or reinstalls the operating system, renames a file, or moves the installer program module to another hard drive on the same computer. There is also a need for a method for automatically updating a computer registry when a system administrator “pushes” an application program module to clients.
There is also a need for a method for automatically updating a computer registry without the user having to install the selfreg.dll or the .srg file. There is also a need for a method for automatically updating a computer registry without the user having to explicitly call the selfreg.dll.